There is no rail service to Geraldton.
Many private and public buses run into and around Geraldton.
By car you take Brand Highway North from Perth for approximately 440km.
Geraldton airport GET is around 10km east of Geraldton.
Skywest operate flights to and from Perth.
You could arrive in Geraldton via cargo ship or cruise liner. However that is the rarest mode of entry.